// https://campus.alibaba.com/positionList.htm
// https://campus.alibaba.com/traineePositionList.htm

// 淘宝网
var spider = require('../../dao/node.spider');
var cheerio = require('cheerio');
var url_node = require('url');
var Iconv = require('iconv-lite');
var pinyin = require('node-pinyin');
var insertDB = require('../../dao/insert.db');
var utils = require('../../dao/utils');
var request = require('request');
var fs = require('fs');
var url1 = "https://campus.alibaba.com/positionList.htm";
var url2 = "https://campus.alibaba.com/traineePositionList.htm";



module.exports = function (callback) {

    get(url1, null);
    get(url2, callback);
};

function get(url, callback) {

    request({
        url: url,
        encoding: null
    }, function (err, res, body) {
        var res;
        try {
            res = body.toString('utf-8');

            // console.log(res);

            var $ = cheerio.load(res);


            var lis = $(".job-content .campus-position-table-body tr");


            for (var i = 0; i < lis.length; i++) {
                var item = lis.eq(i);

                var data = {
                    "url": item.find('th a').attr('href'), // jd详情页的地址
                    'edu': '', // 最低学历
                    'exp': [], // 所需工作经验，比如[3,5]表示3到5年,[3]表示3年，[]表示无经验要求
                    'name': item.find('th a').text(), // 职位名称*
                    'date': '', // 职位发布日期，字符串形式即可，后期统一转换
                    'lang': '', // 对语言的要求
                    'place': '', // 办公具体地址
                    'major': '', // 专业要求
                    'count': '', // 招聘数量
                    'salary': '', // 薪资待遇，[5000,8000]表示月薪5到8千，[4000]表示4千，[]表示没有写明
                    'toSchool': true, // 是否是面向校园招聘，本次官网抓取一律都是校园招聘，所以此处都是True
                    'welfare': [], // 福利待遇，比如五险一金、十三薪之类的，保存成数组
                    'funType': '', // 职能类型，比如证券经纪人是证券/期货/外汇经纪人
                    'company': '阿里巴巴', // 企业名称
                    'location': item.find('td').eq(1).text().split(','), // 所在城市
                    'industry': '', // 企业所在行业
                    'keywords': [], // 此岗位的搜索关键字 
                    'platform': 'offical', // 针对官网抓取时此处一律保存为offical
                    'searchKeyword': '', // 搜索的关键字，由于是官网抓取所以此处一律为空字符串
                    'description': '', // 职位的详细描述，包括职责、要求之类的
                    'subIndustry': '', // 一律为空字符串
                    'stime': new Date() // 抓取时间
                };

                getDetail(data);
            }
            if (callback) {
                callback(null, 'taobao');
            }
        } catch (e) {


        }

    });
}

function getDetail(data) {

    console.log(data['url']);
    request({
        url: data['url'],
        encoding: null
    }, function (err, res, body) {
        var res;
        try {
            res = body.toString('utf-8');

            // console.log(res);

            var $ = cheerio.load(res);

            data['description'] = $(".job-content dl").text().split('申请岗位Apply')[0];

            insertDB(data);
        } catch (e) {


        }
    });
}